Skip to content

[DO NOT MERGE] Arm control v2#114

Open
Roozki wants to merge 34 commits intomainfrom
arm_control_v2
Open

[DO NOT MERGE] Arm control v2#114
Roozki wants to merge 34 commits intomainfrom
arm_control_v2

Conversation

@Roozki
Copy link
Contributor

@Roozki Roozki commented Mar 4, 2026

For comparing diffs

Roozki and others added 30 commits November 24, 2025 21:59
* merging cv stuff into main

* wtf was that random pkg

---------

Co-authored-by: Cameron <cameronbasara@gmail.com>
* added dockerfiles and added -y in setup files

* added dockerfiles and added -y in setup files

* added Dockerfile documentation and added a docker-compose for easier commands

* forgot to change the header in the Dockerfile to the new usage process

* added setup_everything_common script to dockerfile

* adjusted the description for yes | command

* added yaml for docker

* readded common ros packages

* bro

* bro #2

* i'm stupid, I added it, then ignored it, then forget to delete it

* removed env cause it was breaking things

* why me

* added submodules

* changed docker compose run

* added dockerfiles and added -y in setup files

* added setup_everything_common script to dockerfile

* adjusted the description for yes | command

* fixed dockerfile, minimalized workflow, minimalized docs, added instructions for compatibility with ARM64

* updated again oops

* readded common ros packages

* added submodules

* changed docker compose run

* resolved merge conflicts again

* yup

---------

Co-authored-by: arhim <arhim@student.cs.ubc.ca>
@aaronrhim
Copy link
Contributor

Mostly refactored into Moteus_CAN_interface folder.

  • Extra ~70 lines are from adding a less query-hacking send position command function in MoteusIO.
  • Could use a lot more improvements -- especially in the moteus interface -- but did not want to delay for too long and everything is still kept legacy and functional

arm_publisher->publish(std::move(home_cmd));
RCLCPP_INFO(this->get_logger(), "Home button pressed — sending HOME ALL command");
}
prev_home_btn_ = home_btn;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

homing function



// --- Also publish TwistStamped for MoveIt Servo (drives RViz arm) ---
void ArmJoy::joy_callback(const sensor_msgs::msg::Joy::SharedPtr msg){
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New joy callback which removes old forward kinematics (i gotta add that back in) and adds the joint_trajectory callback function which is the output IK-solved pose (now joy doesn't talk direrctly to arm command basically)

twist_msg->twist.linear.z = lz;

// --- EE Orientation from analog sticks ---
auto applyDeadzone = [](double val, double dz) -> double {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

duplicate code

<!-- Import dev_arm urdf file -->
<xacro:include filename="$(find dev_arm_description_v2)/urdf/dev_arm.urdf" />
<!-- <xacro:include filename="$(find dev_arm_moveit_config)/config/dev_arm.urdf.xacro" /> OLd? -->
<!-- <xacro:include filename="$(find dev_arm_moveit_config)/config/dev_arm.urdf.xacro" /> OLd? -->
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

annoyed me

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

revert to original

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

removed duplicate code (rebase conflict)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

meow

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

meowmeow

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no idea why i was using servo_node or how it even worked but I reverted back to the logical working state

Copy link
Contributor

@aaronrhim aaronrhim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Making some reviews

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i need to revert this back (used for testing but I don't think changing the max velocity from 0.05 to 0.3 changed anything)

sim_command_msg.data[6] = gripper_state_;

// Publish EE state only when it actually changes (on 'G' commands)
if (msg->cmd_type == 'G')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think "G" is a message type (need to check on that) but I just hard coded in the message instead.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lots of changes here to support the singular new position command function but also remove useless parsing features

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants